home *** CD-ROM | disk | FTP | other *** search
- #ifndef __ProcessServices__
- #define __ProcessServices__
-
- #ifndef __Service__
- #include "Service.h"
- #endif __Service__
-
-
- // Special error codes for errors that don't otherwise have codes:
- enum
- {
- extractAddrErr = 1,
- validateAddrErr,
- noProcessMgrErr,
- noSuchProcessErr
- };
-
- //—————————————————————————————————————————————————————————————————————————————————————
- // ProcessServices class - base class for implementing several Process services for V.U.
- //—————————————————————————————————————————————————————————————————————————————————————
- class ProcessServices : public Service
- {
- protected:
- ProcessServices( char* pSrvName ); // constructor passes name to Service
- OSErr CheckForProcessMgr();
- void ProcessName2cstr( char* processName );
- OSErr GetNamedProcessInfo( char* pProcessName, ProcessInfoRec* pInfoPtr );
- OSErr ExtractAddr( ScriptValue* pAddrItem, unsigned long* pAddrPtr );
- OSErr ValidateAddr( unsigned long pAddr );
- };
-
-
- //—————————————————————————————————————————————————————————————————————————————————————
- // ProcessNamesListService class - derived class gets all names of all active processes
- //—————————————————————————————————————————————————————————————————————————————————————
- class ProcessNamesListService : public ProcessServices
- {
- public:
- ProcessNamesListService(); // constructor
- virtual OSErr ProcessRequest( Request* pReq ); // Implements the Request
- };
-
-
- //—————————————————————————————————————————————————————————————————————————————————————
- // FrontProcessNameService - derived class gets name of front process
- //—————————————————————————————————————————————————————————————————————————————————————
- class FrontProcessNameService : public ProcessServices
- {
- public:
- FrontProcessNameService(); // constructor
- virtual OSErr ProcessRequest( Request* pReq ); // Implements the Request
- };
-
-
- //—————————————————————————————————————————————————————————————————————————————————————
- //—————————————————————————————————————————————————————————————————————————————————————
- // PartitionSizeService class - derived class to get partition size of named process
- //—————————————————————————————————————————————————————————————————————————————————————
- class PartitionSizeService : public ProcessServices
- {
- public:
- PartitionSizeService(); // constructor
- virtual OSErr ProcessRequest( Request* pReq ); // Implements the Request
- };
-
-
- //—————————————————————————————————————————————————————————————————————————————————————
- // FreeMemService class - derived class to get free memory in named process's heap
- //—————————————————————————————————————————————————————————————————————————————————————
- class FreeMemService : public ProcessServices
- {
- public:
- FreeMemService(); // constructor
- virtual OSErr ProcessRequest( Request* pReq ); // Implements the Request
- };
-
-
- //—————————————————————————————————————————————————————————————————————————————————————
- // ReadByteService class - derived class to read a byte from RAM or ROM
- //—————————————————————————————————————————————————————————————————————————————————————
- class ReadByteService : public ProcessServices
- {
- public:
- ReadByteService(); // constructor
- virtual OSErr ProcessRequest( Request* pReq ); // Implements the Request
- };
-
-
- //—————————————————————————————————————————————————————————————————————————————————————
- // ReadBlockService class - derived class to get read a block of bytes from RAM or ROM
- //—————————————————————————————————————————————————————————————————————————————————————
- class ReadBlockService : public ProcessServices
- {
- public:
- ReadBlockService(); // constructor
- virtual OSErr ProcessRequest( Request* pReq ); // Implements the Request
- };
-
-
- #endif __ProcessServices__
-